/**
 * 
 */
package herguan.expertadvise.dao;
import herguan.expertadvise.dao.hibernate.Login;
import herguan.expertadvise.dao.hibernate.Skill;
import herguan.expertadvise.vo.UsersListVO;

import java.sql.SQLException;
import java.util.ArrayList;
import java.util.Collection;

import org.springframework.dao.DataAccessException;
/**
 * @author Nidhi Pandya
 *
 */
public interface SpringHibernateDAO {
	
	/**
	 * Retrieve all <code>true</code>/<code>false</code> from the datastore.
	 * @return a <code>true</code> or  <code>fasel</code>.
	 */
	public boolean checkUserLogin(String strUserName, String strPassword) throws DataAccessException,java.sql.SQLException;
   
	/**
	 * Saves Article object to the datastore.
	 *
	 */
	public void addUser(Login obj) throws DataAccessException;


	/**
	 * Update Article object ot the datastore.
	 *
	 */
	public void updateUser(Login obj) throws DataAccessException;


	/**
	 * Retrieve <code>Article</code> from the datastore.
	 * @return Article.
	 */
	public Login loadUser(String id) throws DataAccessException;
	
	public void addratings(String userid, String rating) throws DataAccessException,java.sql.SQLException;

	
	public ArrayList<Skill> loadSkills() throws DataAccessException,java.sql.SQLException;
	
	
	/**
	 * Retrieve all <code>true</code>/<code>false</code> from the datastore.
	 * @return a <code>true</code> or  <code>fasel</code>.
	 */
	public boolean checkValidUserName(String strUserid) throws DataAccessException,java.sql.SQLException;
	
	
	/**
	 * Retrieve <code>Country Name</code>s from the datastore.
	 * @return a <code>Collection</code> of Country.
	 */
	public Collection getUsersList(ArrayList<String> arrSelectedSkils) throws DataAccessException,java.sql.SQLException;

	/**
	 * Retrieve all <code>true</code>/<code>false</code> from the datastore.
	 * @return a <code>true</code> or  <code>fasel</code>.
	 */
	public int getUserId(String strUserid) throws DataAccessException,java.sql.SQLException;
	
	
	
	
	/**
	 * Retrieve all <code>true</code>/<code>false</code> from the datastore.
	 * @return a <code>true</code> or  <code>fasel</code>.
	 */
    public String[]  retriveUserForgetPassword(String strUserName, String strEmail) throws DataAccessException,java.sql.SQLException;
	
    public void foo1();
    
    public String foo2();

    public void foo3(UsersListVO user);
    
    public Login foo4(String user);
      
    public int foo5();

	public void addquestion(int seekerid, int providerid, String question) throws SQLException ;

	public void addanswer(String struserid, String questionid, String stranswer);
    
	
	
	
}

